package com.igroupes.ovineherd.service;

public interface SequenceService {
    /**
     * 通过key获取下一个自增值
     * @param key
     * @return
     */
    Long nextValue(String key);


    void addSequenceRecord(String key, long inc, long min, long max);

    /**
     * 添加自增记录
     * @param key 唯一key
     * @param inc 步长
     * @param min 最小值
     * @param max 最大值
     * @param value 初始值，一般是min
     */
    void addSequenceRecord(String key, long inc, long value, long min, long max);

    void addSequenceRecord(String key, long inc, long value, int length);

    void addSequenceRecord(String key, long value, int length);
    void addSequenceRecord(String key, int length);
}
